精通Linux系列二十五:电子邮件
点击关注公众号,AI&编程干货及时送达
电子邮件
mutt | 文本式邮件客户端。 |
mail | 简约的文本式邮件客户端。 |
mailq | 查看系统上的外发邮件队列。 |
Linux包括了多种文本式邮件客户端。我们会检查其中几个,每个都有不同的用途和优点。(Linux也有图形化的邮件客户端,如Thunderbird(雷鸟)、Evolution(进化)和KMail(鸽子邮)。)
mutt
stdin stdout - 文件 --- opt ---help ---version
mutt [选项]
Mutt是一个在普通终端(或终端窗口)中运行的文本式邮件软件,所以它既可以本地使用(例如,在一个X终端窗口中)也可以通过SSH连接远程使用。它功能强大,带有许多命令和选项。要调用它,输入:
→ mutt
当主屏幕出现时,您的邮箱中的任何消息都会简短地列出,每行一个,以下命令可用:
按键 | 功能 |
上箭头 | 移动到前一个消息。 |
下箭头 | 移动到下一个消息。 |
PageUp | 向上滚动一页的消息。 |
PageDown | 向下滚动一页的消息。 |
Home | 移动到第一个消息。 |
End | 移动到最后一个消息。 |
m | 撰写新邮件。这将调用您的默认文本编辑器。编辑消息并退出编辑器后,输入y 发送消息或q 以推迟它。 |
r | 回复当前消息。功能与m 相似。 |
f | 将当前消息转发给第三方。功能与m 相似。 |
i | 查看您邮箱的内容。 |
C | 将当前消息复制到另一个邮箱。 |
d | 删除当前消息。 |
在编写消息时,退出文本编辑器后,以下命令可用:
按键 | 功能 |
a | 为消息添加一个文件(附件)。 |
c | 设置抄送列表。 |
b | 设置密送列表。 |
e | 重新编辑消息。 |
r | 编辑“回复至”字段。 |
s | 编辑主题行。 |
y | 发送消息。 |
C | 将消息复制到文件。 |
q | 不发送消息并推迟。 |
总是可用的其他命令:
按键 | 功能 |
? | 查看所有命令的列表(按SPACEBAR 向下滚动,按q 退出)。 |
^G | 取消进行中的命令。 |
q | 退出。 |
Mutt的官方网站是http://www.mutt.org。想要一个不同的Linux命令行邮件客户端,请查看alpine
(http://patches.freeiz.com/)。
stdin stdout - 文件 --- opt ---help ---version
mail [选项] 接收者
mail
程序是一个快速、简单的电子邮件客户端。大多数人想要一个功能更强大的程序作为常规使用,但是对于来自命令行的快速消息或在脚本中,mail
真的很方便。
要发送一条快速消息:
→ mail smith@example.com
主题:我的主题
我正在输入消息。
结束时,我在一行中单独输入一个句点。
。
抄送:jones@example.com
→
要使用单个命令发送快速消息,请使用管道:
→ echo "嘿!" | mail -s "主题" smith@example.com
要使用单个命令发送文件,你可以使用重定向或管道:
→ mail -s "我的主题" smith@example.com < filename
→ cat filename \
| mail -s "我的主题" smith@example.com
注意你可以轻松地将管道的输出作为电子邮件消息发送;这在脚本中很有用。
有用的选项
-s subject | 设置外发消息的主题行。 |
-v | 详细模式:打印关于邮件传递的消息。 |
-c addresses | 将消息抄送给给定的地址,地址之间用逗号分隔。 |
-b addresses | 将消息密送给给定的地址,地址之间用逗号分隔。 |
mailq
stdin stdout - 文件 -- opt --help --version
mailq
mailq
命令列出了任何等待传递的外发电子邮件消息(但邮件传递通常很快,所以mailq
通常没有输出):
→ mailq
...大小-- ----到达时间-- -发件人/收件人---
333 Tue Jan 10 21:17:14 smith@example.com
jones@elsewhere.org
已发送的邮件消息也记录在日志文件中,例如*/var/log/mail.log*;该名称可能因发行版而异。要查看最近的邮件传递操作,请查看最后几行tail
:
→ tail /var/log/mail.log
邮件读取器之外
在Linux上的电子邮件比仅仅显示你的邮箱并发送和接收消息的其他平台更为“透明”。使用mailq
列出外发电子邮件消息只是一个例子。以下是一些其他选项,来刺激你的兴趣并鼓励你探索。
• 你可以使用任何命令行工具,例如
grep
,处理你的邮箱,因为邮件文件是纯文本。• 你可以使用
fetchmail
命令在命令行手动从邮件服务器检索消息。使用一个简单的配置文件,此命令可以连接到IMAP和POP服务器并批量下载邮件。请查看man fetchmail
。• 你的系统可以运行一个邮件服务器,例如
postfix
或sendmail
,来处理最复杂的邮件传递情况。• 你可以使用
procmail
命令以复杂的方式控制本地邮件传递,该命令通过任意程序过滤到达的电子邮件消息。有关更多信息,请查看man procmail
。• Linux上的垃圾邮件过滤非常先进:查看SpamAssassin(垃圾邮件刺客)程序套件。你可以在收到的电子邮件上个人运行它,或在大量用户的服务器级别运行它。
简而言之,电子邮件不仅限于你的邮件阅读程序的功能。请进行调查和实验!
推荐阅读
你好,我是拾叁,7年开发老司机、互联网两年外企5年。怼得过阿三老美,也被PR comments搞崩溃过。这些年我打过工,创过业,接过私活,也混过upwork。赚过钱也亏过钱。一路过来,给我最深的感受就是不管学什么,一定要不断学习。只要你能坚持下来,就很容易实现弯道超车!所以,不要问我现在干什么是否来得及。如果你还没什么方向,可以先关注我,这里会经常分享一些前沿资讯和编程知识,帮你积累弯道超车的资本。